package base;
import android.content.Context;
import android.content.res.Configuration;
import android.graphics.drawable.Drawable;
import android.net.Uri;
import android.os.Bundle;
import android.view.KeyEvent;
import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.SurfaceHolder.Callback2;
import android.view.View;
import android.view.ViewGroup.LayoutParams;
import android.view.Window;
import java.lang.CharSequence;

import android.view.WindowManagerImpl;
import android.view.Display;
import android.view.DisplayInfo;
import android.hardware.display.DisplayManagerGlobal;
import android.view.DisplayAdjustments;

public class Windows extends Window{
    public WindowManagerImpl windowManagerImpl;
    public Display display;
    public DisplayInfo displayInfo;
    public DisplayAdjustments displayAdjustments;
    public int AppHeight;
    public int AppWidth;
    public native int GetHeight();
    public native int GetWidth();
    public Windows(Context context) {
        super(context);
        //TODO Auto-generated constructor stub
    }
    @Override
    public android.view.WindowManager getWindowManager()
    {
        if(windowManagerImpl==null)
        {
            displayInfo = new DisplayInfo();
            AppHeight=GetHeight();
            AppWidth=GetWidth();
            displayInfo.appHeight=AppHeight;
            displayInfo.appWidth=AppWidth;
            displayAdjustments = new DisplayAdjustments();
            display = new Display(DisplayManagerGlobal.getInstance(), 0, displayInfo, displayAdjustments);
            
            windowManagerImpl = new WindowManagerImpl(display);
        }
        return windowManagerImpl;
    }

    @Override
    public void setTitle(CharSequence title)
    {

    }

    @Override
    public void takeSurface(Callback2 callback) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public void takeInputQueue(android.view.InputQueue.Callback callback) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public boolean isFloating() {
        // TODO Auto-generated method stub
        return false;
    }

    @Override
    public void setContentView(int layoutResID) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public void setContentView(View view) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public void setContentView(View view, LayoutParams params) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public void addContentView(View view, LayoutParams params) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public View getCurrentFocus() {
        // TODO Auto-generated method stub
        return null;
    }

    @Override
    public LayoutInflater getLayoutInflater() {
        // TODO Auto-generated method stub
        return null;
    }

    @Override
    public void setTitleColor(int textColor) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public void openPanel(int featureId, KeyEvent event) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public void closePanel(int featureId) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public void togglePanel(int featureId, KeyEvent event) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public void invalidatePanelMenu(int featureId) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public boolean performPanelShortcut(int featureId, int keyCode, KeyEvent event, int flags) {
        // TODO Auto-generated method stub
        return false;
    }

    @Override
    public boolean performPanelIdentifierAction(int featureId, int id, int flags) {
        // TODO Auto-generated method stub
        return false;
    }

    @Override
    public void closeAllPanels() {
        // TODO Auto-generated method stub
        
    }

    @Override
    public boolean performContextMenuIdentifierAction(int id, int flags) {
        // TODO Auto-generated method stub
        return false;
    }

    @Override
    public void onConfigurationChanged(Configuration newConfig) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public void setBackgroundDrawable(Drawable drawable) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public void setFeatureDrawableResource(int featureId, int resId) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public void setFeatureDrawableUri(int featureId, Uri uri) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public void setFeatureDrawable(int featureId, Drawable drawable) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public void setFeatureDrawableAlpha(int featureId, int alpha) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public void setFeatureInt(int featureId, int value) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public void takeKeyEvents(boolean get) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public boolean superDispatchKeyEvent(KeyEvent event) {
        // TODO Auto-generated method stub
        return false;
    }

    @Override
    public boolean superDispatchKeyShortcutEvent(KeyEvent event) {
        // TODO Auto-generated method stub
        return false;
    }

    @Override
    public boolean superDispatchTouchEvent(MotionEvent event) {
        // TODO Auto-generated method stub
        return false;
    }

    @Override
    public boolean superDispatchTrackballEvent(MotionEvent event) {
        // TODO Auto-generated method stub
        return false;
    }

    @Override
    public boolean superDispatchGenericMotionEvent(MotionEvent event) {
        // TODO Auto-generated method stub
        return false;
    }

    @Override
    public View getDecorView() {
        // TODO Auto-generated method stub
        return null;
    }

    @Override
    public View peekDecorView() {
        // TODO Auto-generated method stub
        return null;
    }

    @Override
    public Bundle saveHierarchyState() {
        // TODO Auto-generated method stub
        return null;
    }

    @Override
    public void restoreHierarchyState(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        
    }

    @Override
    protected void onActive() {
        // TODO Auto-generated method stub
        
    }

    @Override
    public void setChildDrawable(int featureId, Drawable drawable) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public void setChildInt(int featureId, int value) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public boolean isShortcutKey(int keyCode, KeyEvent event) {
        // TODO Auto-generated method stub
        return false;
    }

    @Override
    public void setVolumeControlStream(int streamType) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public int getVolumeControlStream() {
        // TODO Auto-generated method stub
        return 0;
    }

    @Override
    public int getStatusBarColor() {
        // TODO Auto-generated method stub
        return 0;
    }

    @Override
    public void setStatusBarColor(int color) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public int getNavigationBarColor() {
        // TODO Auto-generated method stub
        return 0;
    }

    @Override
    public void setNavigationBarColor(int color) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public void setDecorCaptionShade(int decorCaptionShade) {
        // TODO Auto-generated method stub
        
    }

    @Override
    public void setResizingCaptionDrawable(Drawable drawable) {
        // TODO Auto-generated method stub
        
    }
    
}
